package com.gmadmin.entity.dto;


import com.fasterxml.jackson.annotation.JsonInclude;
import com.gmadmin.common.BaseEntity;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;

/**
 * @author zhangliang
 * @version 1.0
 * @date 2022/8/4 11:32
 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class MessageInfoDto extends BaseEntity {

    /**
     * 主键ID
     */
    @ApiModelProperty(value = "id")
    private Long id;

    /**
     * 标题
     */
    @ApiModelProperty("标题")
    private String title;

    /**
     * 正文
     */
    @ApiModelProperty("正文")
    private String content;

    /**
     * 图片地址
     */
    @ApiModelProperty("图片地址")
    private String image;

    /**
     * 跳转链接
     */
    @ApiModelProperty("跳转链接")
    private String jumpUrl;

    /**
     * 消息类型 1-系统消息  100-其他
     */
    @ApiModelProperty("消息类型 1-系统消息  100-其他")
    private Long type;

    /**
     * 发送者ID
     */
    @ApiModelProperty("发送者ID")
    private Long senderId;

    /**
     * 发送频道 1-站内 2-短信 3-推送
     */
    @ApiModelProperty("发送频道 1-站内 2-短信 3-推送")
    private Long channel;

    /**
     * 接收类型 1-白名单 2-黑名单 3-单一用户 100-全部
     */
    @ApiModelProperty("接收类型 1-白名单 2-黑名单 3-单一用户 100-全部")
    private Long receiveType;

    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String remarks;

    @ApiModelProperty("用户消息通知")
    private List<MessageNoticeDto> messageNotice;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
    }

    public String getJumpUrl() {
        return jumpUrl;
    }

    public void setJumpUrl(String jumpUrl) {
        this.jumpUrl = jumpUrl;
    }

    public Long getType() {
        return type;
    }

    public void setType(Long type) {
        this.type = type;
    }

    public Long getSenderId() {
        return senderId;
    }

    public void setSenderId(Long senderId) {
        this.senderId = senderId;
    }

    public Long getChannel() {
        return channel;
    }

    public void setChannel(Long channel) {
        this.channel = channel;
    }

    public Long getReceiveType() {
        return receiveType;
    }

    public void setReceiveType(Long receiveType) {
        this.receiveType = receiveType;
    }

    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    public List<MessageNoticeDto> getMessageNotice() {
        return messageNotice;
    }

    public void setMessageNotice(List<MessageNoticeDto> messageNotice) {
        this.messageNotice = messageNotice;
    }
}
